home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
prog
/
atari
/
m2
/
cat3src
/
magic
/
d
/
mtdir.d
< prev
next >
Wrap
Text File
|
1997-10-26
|
5KB
|
107 lines
(*----------------------------------------------------------------------*
* *
* MAGICTOOLS Modula's All purpose GEM Interface Cadre Toolbox *
* ÿ ÿ ÿ ÿ ÿ *
*----------------------------------------------------------------------*
* Version 3.30 02.02.1992 (C)90/91/92 by Peter Hellinger Software *
*----------------------------------------------------------------------*
* Dieses Modul ist urheberrechtlich geschtzt. *
* *
* Die Verffentlichung des Quelltextes oder Teilen daraus, sowie die *
* Verbreitung des bersetzten, nicht gelinkten Codes in schriftlicher, *
* oder maschinenlesbarer Form, insbesondere in Zeitschriften, Mail- *
* boxen oder anderen Medien bedarf der ausdrcklichen schriftlichen *
* Einverstndnisserklrung des Autors. *
* *
* Die Verbreitung des Moduls als Teil eines gelinkten Programms ist *
* fr Lizenznehmer ausdrcklich erlaubt! Der Autor behlt sich das *
* Recht vor, diese Erlaubnis jederzeit und ohne Angaben von Grnden zu *
* widerrufen. *
*----------------------------------------------------------------------*)
(*----------------------------------------------------------------------*
* mtDir Directory- und Dateinamen-Manipulationen *
*----------------------------------------------------------------------*)
DEFINITION MODULE mtDir;
FROM MagicSys IMPORT Nil, Null, Bit0, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6,
Bit7, Bit8, Bit9, Bit10, Bit11, Bit12, Bit13, Bit14,
Bit15, LOC, Byte, ByteSet, sWORD, sINTEGER, sCARDINAL,
sBITSET, lINTEGER, lCARDINAL, lWORD, lBITSET;
FROM MagicDOS IMPORT PtrDTA;
CONST Tos100 = 0100H;
Tos102 = 0102H;
Tos104 = 0104H; (* Das aktuelle ST OS *)
Tos106 = 0106H; (* Beim 1040STE zu finden *)
Tos205 = 0205H; (* Die MegaSTE haben so eines *)
Tos206 = 0206H; (* neues fr MegaSTE und alle anderen *)
Tos300 = 0300H; (* Das OS des TT *)
Tos301 = 0301H; (* TT *)
Tos305 = 0305H; (* auch verbreitet *)
Tos306 = 0306H; (* Das neueste OS fr den TT030 *)
PROCEDURE GetDir (VAR pfad, name: ARRAY OF CHAR; REF msg: ARRAY OF CHAR): BOOLEAN;
(* Fileselectorbox, bei OS-Versionen >= Tos14 oder der Patzelbox wird msg in
* die Filebox gesetzt.
*)
PROCEDURE GetFile (REF wild, message: ARRAY OF CHAR; VAR file: ARRAY OF CHAR): BOOLEAN;
(* Bedient sich der Prozedur GetDir. In wild kann ein Wildcard bergeben werden,
* gegebenenfalls mit Pfad. message wird ab Tos 1.4 in den Fileselector gesetzt.
* file enthlt bei Returnwert TRUE den Dateinamen MIT Pfad.
*)
PROCEDURE GetPath (VAR pfad: ARRAY OF CHAR);
(* Ermittelt den aktuellen Pfad *)
PROCEDURE DelTail (VAR pfad: ARRAY OF CHAR);
(* Lscht Suffix vom Pfad weg: Aus "C:\M2\M.PRG" wird "C:\M2\" *)
PROCEDURE SplitPath (REF path: ARRAY OF CHAR; VAR pfad, name, suff: ARRAY OF CHAR);
(* Zerlegt Pfad in seine Bestandteile *)
PROCEDURE CompletePath (VAR pfad: ARRAY OF CHAR; REF standard: ARRAY OF CHAR);
(* Komplettiert einen Pfad nach den MS-DOS-Regeln *)
PROCEDURE ExSelector (): BOOLEAN;
(* TRUE, wenn ein extended Fileselector, zB. von Martin Patzel installiert ist
* ebenfalls TRUE, wenn TOS >= 1.4 verwendet wird.
*)
PROCEDURE GetVersion (): sCARDINAL;
(* Liefert die Version des Betriebssystems *)
PROCEDURE Exist (REF datei: ARRAY OF CHAR): BOOLEAN;
(* TRUE wenn datei existiert *)
PROCEDURE Replace (REF old, wildcard: ARRAY OF CHAR; VAR new: ARRAY OF CHAR);
(* Bildet aus wildcard und old einen neuen Dateinamen (new). Beispiel:
*
* old wildcard new
*
* DATEI.TXT *.DOC DATEI.DOC
* DATEI.TXT X*.* XATEI.TXT
* DATEI.TXT *.* DATEI.TXT
* DATEI.TXT ?????001.* DATEI001.TXT
* DATEI.TXT DATEI.BAK DATEI.BAK
*
*)
PROCEDURE SearchParas (REF maske: ARRAY OF CHAR; attribut: sBITSET;
dta: PtrDTA; firsttime: BOOLEAN);
(* Stellt die Parameter ein, nach denen ein File gesucht wird *)
PROCEDURE Found (): BOOLEAN;
(* TRUE, wenn eine Datei mit den Parametern aus SearchParas gefunden wurde *)
END mtDir.